package com.icinfo.cloud.provider.common.utils;

import cn.hutool.core.util.StrUtil;

/**
 * @Desc 描述
 * @Author mahan
 * @Date 2022/11/16
 */
public class DesensitizeUtil {


	/**
	 * 保留手机号：前三，后四
	 * 例如：158****7117
	 * @param phone
	 * @return
	 */
	public static String hidePhone(String phone){
		if(StrUtil.isEmpty(phone)){
			return "";
		}
		return hide(phone, 3, 4);
	}

	/**
	 * 保留身份证号：前一，后一
	 * 例如：3****************1
	 * @param idCard
	 * @return
	 */
	public static String hideIdCard(String idCard){
		if(StrUtil.isEmpty(idCard)){
			return "";
		}
		return hide(idCard, 1,1);
	}

	/**
	 * 脱敏数据
	 * 类如：
	 * hideString：13688459923
	 * startNum：3
	 * endNum：4
	 * 结果：136****923
	 * @param hideString 需要脱敏的数据
	 * @param startNum 保留前几位
	 * @param endNum 保留后几位
	 * @return
	 */
	public static String hide(String hideString, int startNum, int endNum){
		return StrUtil.hide(hideString, startNum,hideString.length() - endNum);
	}

}
